Method and system for increasing storage capacity in a digital image capture device

ABSTRACT

Method and system aspects for increasing storage capacity in a digital image capture device are described. Compression levels of saved image files are utilized to increase storage capacity by identifying a level of compression of a saved image file in the digital image capture device. The identified level of compression is compared with a predetermined level of compression, and the saved image file is compressed to the predetermined level of compression when the identified level of compression does not match the predetermined level of compression to free storage space in the digital image capture device.

FIELD OF THE INVENTION

[0001] The present invention relates generally to an image capturedevice and more particularly to a method and system for increasingstorage capacity on demand in an image capture device.

BACKGROUND OF THE INVENTION

[0002] In general, modem digital cameras for taking pictures of scenesand the like typically include an imaging device which is controlled bya computer running a single threaded process. When an image is captured,the imaging device is exposed to light and generates raw image datarepresenting the image. The raw image data is typically stored in asingle image buffer where it is then processed and compressed by theprocessor. Many types of compression schemes are used to compress theimage data, with the joint photographic expert group (JPEG) standardbeing the most popular. After the processor processes and compresses theraw image data into JPEG image files, the processor stores the JPEGimage files into an internal memory or on an external memory card.

[0003] While digital cameras do alleviate the hassles of using anddeveloping film that are required by film-based cameras, digital camerasare not without their share of concerns. One main concern is themaintenance of storage space in the digital camera. Most users desirethe ability to take images on an instant's notice. Inherently, alimitation exists due to the camera's storage capacity. Even with theuse JPEG compression techniques to efficiently utilize storage, usersare often hampered when taking an image as a result of a lack of storagespace. Thus, the ability to efficiently increase the storage capacity ina digital camera is highly desirable.

[0004] Accordingly, a need exists for a convenient and efficient mannerof increasing storage capacity in an image capture unit. The presentinvention addresses such a need.

SUMMARY OF THE INVENTION

[0005] The present invention provides aspects for increasing storagecapacity in a digital image capture device. Compression levels of savedimage files are utilized to increase storage capacity by identifying alevel of compression of a saved image file in the digital image capturedevice. The identified level of compression is compared with apredetermined level of compression, and the saved image file iscompressed to the predetermined level of compression when the identifiedlevel of compression does not match the predetermined level ofcompression to free storage space in the digital image capture device.

[0006] Through the present invention, the ability to increase storagespace in a storage device of a digital image capture unit is achieved.Thus, on-demand image capture is successfully supported with reducedrisk of a lack of storage space. These and other advantages of theaspects of the present invention will be more fully understood inconjunction with the following detailed description and accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0007]FIG. 1 illustrates a block diagram of one preferred embodiment ofa digital camera 110 is shown for use in accordance with the presentinvention.

[0008]FIGS. 2A and 2B are diagrams depicting exemplary hardwarecomponents of the camera's user interface.

[0009]FIG. 3 is a diagram illustrating the operation and appearance ofthe user interface when the camera is placed into review mode.

[0010]FIG. 4 illustrates a diagram of one embodiment for an image file.

[0011]FIG. 5 illustrates a diagram of one embodiment for the image tags.

[0012]FIG. 6 illustrates a block flow diagram of a method for increasingstorage capacity in accordance with the present invention.

DETAILED DESCRIPTION OF THE INVENTION

[0013] The present invention relates to a method and system forincreasing storage capacity in a digital image capture device. Thefollowing description is presented to enable one of ordinary skill inthe art to make and use the invention and is provided in the context ofa patent application and its requirements. Although the presentinvention will be described in the context of a still digital camera,various modifications to the preferred embodiment will be readilyapparent to those skilled in the art and the generic principles hereinmay be applied to other embodiments. That is, any digital imagingcapture device which captures, stores, or displays digital images, couldincorporate the features described hereinbelow and that device would bewithin the spirit and scope of the present invention. Thus, the presentinvention is not intended to be limited to the embodiment shown but isto be accorded the widest scope consistent with the principles andfeatures deseribed herein.

[0014] Referring now to FIG. 1, a block diagram of one preferredembodiment of a digital camera 110 is shown for use in accordance withthe present invention. Camera 110 preferably comprises an imaging device114, a system bus 116 and a computer 118. Imaging device 114 includes animage sensor, such as a charged coupled device (CCD) or a CMOS sensor,for generating a set of raw image data representing a captured image. Ina preferred embodiment, system bus 116 provides connection paths betweenimaging device 114, an optional power manager 342, central processingunit (CPU) 344, dynamic random-access memory (DRAM) 346, input/outputinterface (I/O) 348, non-volatile memory 350, and buffers/connector 352that connect an optional removable memory 354 to system bus 116.

[0015] CPU 344 may include a conventional microprocessor device forcontrolling the operation of camera 110. In the preferred embodiment,CPU 344 is capable of concurrently running multiple software routines tocontrol the various processes of camera 110 within a multithreadedenvironment. For example, images may be captured at the same time thatpreviously captured images are processed in the background toeffectively increase the capture rate of the camera. In a preferredembodiment, CPU 244 runs an operating system that includes a menu-drivenGUI and provides image processing through software, rather thanhardware. An example of such software is the DIGITA OperatingEnvironment by FlashPoint Technology of San Jose, Calif. Although CPU344 is preferably a microprocessor, one or more DSPs (digital signalprocessor) or ASICs (Application Specific Integrated Circuit) could alsobe used.

[0016] I/O 348 is an interface device allowing communications to andfrom computer 118. For example, I/O 348 permits an external hostcomputer (not shown) to connect to and communicate with computer 118.I/O 348 also interfaces with a plurality of buttons and/or dials 404,and an optional status LCD 406, which in addition to the LCD screen 402,are the hardware elements of the camera's user interface 408.

[0017] Non-volatile memory 350, which may typically comprise aconventional read-only memory or flash memory, stores a set ofcomputer-readable program instructions to control the operation ofcamera 110. Removable memory 354 serves as an additional image datastorage area and is preferably a non-volatile device, such a flash disk,readily removable and replaceable by a camera 110 user viabuffers/connector 352.

[0018] Power supply 356 supplies operating power to the variouscomponents of camera 110. Power manager 342 communicates via line 366with power supply 356 and coordinates power management operations forcamera 110. In the preferred embodiment, power supply 356 providesoperating power to a main power bus 362 and also to a secondary powerbus 364. The main power bus 362 provides power to imaging device 114,I/O 348, non-volatile memory 350 and removable memory 354. The secondarypower bus 364 provides power to power manager 342, CPU 344 and DRAM 346.

[0019] Power supply 356 is connected to main batteries 358 and also tobackup batteries 360. In the preferred embodiment, a camera 110 user mayalso connect power supply 356 to an external power source. During normaloperation of power supply 356, the main batteries 358 provide operatingpower to power supply 356 which then provides the operating power tocamera 110 via both main power bus 362 and secondary power bus 364.During a power failure mode in which the main batteries 358 have failed(when their output voltage has fallen below a minimum operationalvoltage level) the backup batteries 360 provide operating power to powersupply 356 which then provides the operating power only to the secondarypower bus 364 of camera 110.

[0020] Dynamic Random-Access-Memory (DRAM) 346 is a contiguous block ofdynamic memory that may be selectively allocated for various storagefunctions. DRAM 346 stores both raw and compressed image data and isalso used by CPU 344 while executing the software routines used withincomputer 118. The raw image data received from imaging device 114 istemporarily stored in several input buffers (not shown) within DRAM 346.Once the raw image data is processed, it is stored in a frame buffer(not shown) for display on the LCD screen 402. In a preferredembodiment, the input buffers and the frame buffer are split into twoping-pong buffers to improve the display speed of the digital camera andto prevent the tearing of the image in the display 402. After processedimage data has been stored in DRAM 346, LCD controller 390 transfers theimage data to LCD screen 402 for display.

[0021]FIGS. 2A and 2B are diagrams depicting exemplary hardwarecomponents of the camera's user interface 408. FIG. 2A is back view ofthe camera 110 showing the LCD screen 402, a four-way navigation controlbutton 409, an overlay button 412, a menu button 414, and a set ofprogrammable soft keys 416. FIG. 2B is a top view of the camera 110showing a shutter button 418, and a mode dial 420. The camera mayoptionally include status LCD 406, status LCD scroll and select buttons422 and 424, a sound record button 426, and zoom-in, zoom-out buttons426 a and 426 b.

[0022] The camera operates in at least two modes, capture mode forcapturing images, and play mode for playing back the captured images onthe LCD screen 402. Further preferably included is a review mode.

[0023] Referring now to FIG. 3, a diagram illustrating the operation andappearance of the user interface when the camera is placed into reviewmode is shown. The review mode enables the user to view all the imagesin the camera along with specific attributes associated with each of theimages.

[0024] The review screen layout is based on a filmstrip metaphor whichallows users to quickly move forward and backward among pictureschronologically. In a preferred embodiment, several small-sized versionsof the captured images, called thumbnails 700, are displayed in a rowacross the LCD screen 402. The user may scroll through the series ofdisplayed thumbnails 700 in the LCD screen 402 using the four-waynavigation control button 409. The direction of scrolling is capablymapped to the horizontal left/right buttons 410 a and 410 b. When theuser presses the left/right buttons 410, the thumbnails 700 arescrolled-off the LCD screen 402 and replaced by new thumbnails 700representing other captured images.

[0025] A stationary selection arrow line 702 is used as both anavigational aid and to indicate which thumbnail is the currentlyselected image. When there are more than four images in the camera, theselection arrow line 702 displays arrow heads to indicate movement inthat direction is possible with the left/right navigation buttons 410.As the user presses the navigation buttons 410 and the thumbnails 700scroll across the LCD screen 402, the thumbnail 700 that is positionedover a notch in the selection arrow line 702 is considered the selectedimage.

[0026] When a thumbnail 700 becomes the selected image, additionalinformation corresponding to that image is automatically displayed. In apreferred embodiment, the additional information includes a largethumbnail 704 showing a larger view of the selected thumbnail, and imageinformation comprising an icon bar 706 and text 708. The icon bar maydisplay several icons indicating the media types associated with theactive image, such as whether the image is a still, a time lapse, or aburst image, whether sound is attached to the image, and a category forthe image. The displayed text 708 may include a specification of thename or number of the image, and the date and time the image wascaptured.

[0027]FIG. 4 illustrates a diagram of one embodiment for an image file835. Image file 835 includes a header 805, image data 810, a screennail815, a thumbnail 820, and image tags 825.

[0028] Header 805 preferably includes information that identifies anddescribes the various contents of image file 835. Image data 810contains actual captured image data. Image data 810 exists in whicheverformat that is appropriate for the current location of image file 835within the image processing chain of the camera 110. Screennail 815 andthumbnail 820 are each different versions of image data 810 that havevarying degrees of reduced resolution for a number of special viewingapplications.

[0029] Image tags 825 include various types of information thatcorrespond and relate to particular captured image data 810, asdiscussed in conjunction with FIG. 5.

[0030] Referring to FIG. 5, a diagram of one embodiment for the imagetags 825 is shown. In the FIG. 5 embodiment, image tags 825 includecapture information tags, user tags 715, product tags 720, and automaticcategory tags 735. Capture information tags 710 preferably includevarious types of information that correlate with the capture image data810. For example, capture information tags 710 may indicate focussetting, aperture setting, and other relevant information that may beused for effectively processing or analyzing the corresponding imagedata. User tags 715 include those labels a user specifies for a givenimage, often referred to as ‘stamps’, such as ‘birthday’ or ‘vacation’,etc., that aid in personal categorization of the images. Product tags720 typically contain various other information, such as camera 110manufacturer.

[0031] Automatic category tags 735 result from analysis of the imagedata, such as described in co-pending U.S. patent application, Ser. No.(unknown), entitled “System and Method for Automatic Analysis andCategorization of Images in an Electronic Imaging Device”, assigned tothe assignee of the present invention, and filed ______. For example,individual image analysis may generate automatic category tags 735 basedon detection of a person or groups of persons according tocharacteristics, like substantial amounts of flesh tones within theimage. Category tags resulting from detection of nature scenes fromcharacteristics, like substantial green content in the image combinedwith the relative lack of hard edges, are also possibly automaticallygenerated. Similarly, categories like city images, water images, orindoor images may be detected by characteristic features contained inthose images.

[0032] In the processing of the digital images in camera 110, toconserve storage space, compression techniques are routinely employed,such as JPEG compression techniques. Compression techniques normally arechosen based on a balance between the time needed to perform thecompression and the amount of data loss during compression. Usually,higher quality compression techniques, i.e., more lossless techniques,take longer to perform. While storage space is conserved throughcompression, conserving enough storage space in camera 110 for at leastone image is always desirable to ensure that at any moment, a desiredimage is able to be captured. Accordingly, in the present invention,maintaining sufficient storage space is achieved for a digital camera.

[0033] Referring to FIG. 6, a flow diagram illustrates an overallsequence for producing storage space from saved image files inaccordance with the present invention. The method initiates once astorage recovery procedure has been enabled, as determined via step1000. By way of example, insufficient storage space for an image may notbe discovered until an attempt is made by a user to take an image. Inaccordance with one embodiment, therefore, the decision to initiatestorage recovery occurs when a user responds affirmatively to anappropriate prompt that is provided by the camera 110 when there is notenough storage space for a current attempt to capture an image.Alternatively, the storage recovery procedure may be initiated as acontinuous background process through selection of a menu item oranother appropriate selection means by a user when setting up an imagecapture session.

[0034] Once enabled, the storage recovery procedure continues withexamination of stored image files to determine whether the stored imagefile has been compressed to a predetermined compression level (step1002). If the image file has not been compressed to the predeterminedlevel, the image file is compressed to the predetermined level (step1004). For example, as previously mentioned, JPEG compression techniquesare often employed to compress image data before storage. Thus, mostimage files will be stored as compressed JPEG files. However, furthercompression of the image file is possible via alternative compressiontechniques, such as wavelet compression algorithms. Thus, the storagerecovery procedure employs the alternative compression algorithm tofurther compress a stored image file to the predetermined level. Theidentification of the level of compression is capably done byidentifying a file extension that indicates compression, such as “.jpg”for JPEG files or by looking in the file header. Once the predeterminedcompression level has been reached, the process continues with a nextimage file, as determined via step 1006, until enough storage space hasbeen freed, or there are no more stored image files that require furthercompression. In this manner, an increase in the storage capacity of adigital camera is achieved.

[0035] Thus, the present invention efficiently maintains sufficientstorage space for capturing an image. While the level of compression fora given image file has been described as a preferred designator foridentifying files that are processed to produce additional storagespace, the designation may also be done more specifically by a user. Forexample, a user may know that certain files that are still being carriedin the camera have actually been copied/archived. Thus, a user could tagthese files when viewed in review mode, such as through a menu selectionitem, as highest priority candidates for further compression.Conversely, certain files could also be tagged as unavailable forfurther compression, such as when it is desired to maintain the qualityof the image. Of course, the process of FIG. 6 would then require afirst check for files tagged with the priority to perform the additionalcompression on these files first and a check to determine whether thefile has been marked as unavailable for further compression. Thus, theability to increase storage is adaptive to accommodate user's inputs.

[0036] Although the present invention has been described in accordancewith the embodiments shown, one of ordinary skill in the art willreadily recognize that there could be variations to the embodiments andthose variations would be within the spirit and scope of the presentinvention. It should be appreciated that although particular mention hasbeen made of JPEG file formats, the present invention is suitable foruse with any file format, not just JPEG. In addition, software writtenaccording to the present invention may be stored on a computer-readablemedium, such as a removable memory, or transmitted over a network, andloaded into the digital camera for execution. Accordingly, manymodifications may be made by one of ordinary skill in the art withoutdeparting from the spirit and scope of the appended claims.

What is claimed is:
 1. A method for producing storage space in a digitalimage capture device, the method comprising: (a) identifying a level ofcompression of a saved image file in the digital image capture device;(b) comparing the identified level of compression with a predeterminedlevel of compression; and (c) compressing the saved image file to thepredetermined level of compression when the identified level ofcompression does not match the predetermined level of compression tofree storage space in the digital image capture device.
 2. The method ofclaim 1 further comprising performing steps (a), (b), and (c) as abackground process in the digital image capture device.
 3. The method ofclaim 1 further comprising performing steps (a), (b), and (c) inresponse to insufficient storage space during an image capture session.4. The method of claim 3 further comprising selecting the performance ofsteps (a), (b), and (c) by a user during the image capture session. 5.The method of claim 1 wherein the identified level of compressionresults from compression according to a JPEG compression algorithm. 6.The method of claim 1 wherein the predetermined compression levelresults from compression according to a wavelet compression algorithm.7. The method of claim 1 further comprising repeating steps (a), (b),and (c) for each digital image saved in the digital image capturedevice.
 8. A method for reclaiming storage space in a digital imagecapture device during an image capture session, the method comprising:initiating capture of a digital image; identifying insufficient storagespace for the digital image in the digital image capture device;determining whether a storage recovery procedure is desired; andreclaiming storage space through the storage recovery procedure from atleast one saved digital image file when the storage recovery procedureis desired.
 9. The method of claim 8 wherein the storage recoveryprocedure further comprises: (a) identifying a level of compression of asaved image file in the digital image capture device; (b) comparing theidentified level of compression with a predetermined level ofcompression; and (c) compressing the saved image file to thepredetermined level of compression when the identified level ofcompression does not match the predetermined level of compression tofree storage space in the digital image capture device.
 10. The methodof claim 9 further comprising repeating steps (a), (b), and (c) untilenough storage space has been reclaimed to store the digital image. 11.The method of claim 9 wherein the identified level of compressionresults from compression according to a JPEG compression algorithm. 12.The method of claim 9 wherein the predetermined compression levelresults from compression according to a wavelet compression algorithm.13. The method of claim 9 further comprising designating an image fileas unavailable for the storage recovery procedure.
 14. A system forincreasing storage capacity in a digital image capture device, thesystem comprising: storage means for storing digital image data capturedwith the digital image capture device; and processing means forprocessing the digital image data to form digital images, wherein theprocessing means identifies insufficient storage space for a digitalimage in the digital image capture device, determines whether a storagerecovery procedure is desired, and reclaims storage space in the storagemeans through the storage recovery procedure from at least one saveddigital image file in the storage means when the storage recoveryprocedure is desired.
 15. The system of claim 14 wherein the processingmeans performs the storage recovery procedure by: (a) identifying alevel of compression of a saved image file in the digital image capturedevice; (b) comparing the identified level of compression with apredetermined level of compression; and (c) compressing the saved imagefile to the predetermined level of compression when the identified levelof compression does not match the predetermined level of compression tofree storage space in the digital image capture device.
 16. The systemof claim 15 wherein the processing means repeats steps (a), (b), and (c)until enough storage space has been reclaimed in the storage means tostore the digital image.
 17. The system of claim 16 wherein theidentified level of compression results from compression according to aJPEG compression algorithm.
 18. The system of claim 16 wherein thepredetermined compression level results from compression according to awavelet compression algorithm.